"""
json数据格式：
    json是一种特殊格式的字符串，一种轻量级的数据交互格式，采用完全独立于编程语言的文本格式来存储和表示数据。
    python使用JSON有很大的优势，因为：JSON无非就是单独的字典或者一个单独的内部元素都是字典的列表，
    所以JSON可以跟python的字典或列表无缝转换
json操作：
    1.dumps() 将字典或列表转换为JSON ensure_ascii = FaLse:确保中文能正常转换
    2.loads() 将JSON转换为字典或列表
"""
# 导入json模块
import json

# 准备一个列表，里面是字典类型的数据，将其转换为JSON
data = [{"name": "曹操", "age": 20}, {"name": "刘备", "age": 21}, {"name": "孙权", "age": 19}]
# 将数据转换为JSON ensure_ascii=False:确保中文能正常转换
json_str = json.dumps(data, ensure_ascii=False)
print(type(json_str))
print(json_str)

# 准备一个字典
d = {"name": "周杰轮", "age": 30}
json_str = json.dumps(d, ensure_ascii=False)
print(json_str)

# 将JSON字符串转换为python列表数据类型 [{k1:v1,k2:v2},{k1:v1,k2:v2},{k1:v1,k2:v2}]
print("---------------------------------")
s = '[{"name": "曹操", "age": 20}, {"name": "刘备", "age": 21}, {"name": "孙权", "age": 19}]'
l = json.loads(s)
print(type(l))
print(l)

# 将JSON字符串转换为python字典数据类型 {k1:v1,k2:v2}
print("---------------------------------")
d = '{"name": "周杰轮", "age": 30}'
dic = json.loads(d)
print(type(dic))
print(dic)
